package cn.tedu.kcircle.content.front.repository.persist;

import cn.tedu.kcircle.common.po.PageData;
import cn.tedu.kcircle.content.front.repository.model.ContentAddModel;
import cn.tedu.kcircle.content.front.repository.model.ContentListItemModel;
import cn.tedu.kcircle.content.front.repository.model.ContentStandardModel;
import cn.tedu.kcircle.content.front.repository.model.ContentUpdateModel;
import cn.tedu.kcircle.content.front.service.bo.ContentListItemBO;
import cn.tedu.kcircle.content.front.service.bo.ContentStandardBO;

import java.util.List;

public interface ContentRepository {
    /*插入文章*/
    Long insert(ContentAddModel contentAddParam);

    /*根据id删除文章*/
    int deleteById(Long id);

    /*根据id修改文章*/
    int updateById(ContentUpdateModel contentUpdateParam);
    /**
     * 根据id查询类别数据详情
     *
     * @param id 类别ID
     * @return 匹配的类别数据详情，如果没有匹配的数据，则返回null
     */
    ContentStandardModel getStandardById(Long id);

    /**
     * 查询文章数据列表
     *
     * @param pageNum  页码
     * @param pageSize 每页记录数
     * @return 文章数据列表
     */
    PageData<ContentListItemModel> listPage(Integer pageNum, Integer pageSize);

    /**
     * 查询作者文章列表
     * @param authorId
     * @return
     */
    List<ContentStandardModel> listByAuthorId(Long authorId);

    Integer getResourceTypeById(Long id);
}
